/***************************************************************************//**
 * @file
 * @brief custom_mi_config.h
 *
 ******************************************************************************/
#ifndef CUSTOM_MI_CONFIG_H
#define CUSTOM_MI_CONFIG_H

#include "product_info.h"

/**
 * @note Device firmware version. It'll be filled in Version character appended to
 * mijia ble libs version.
 */
#define DEVELOPER_VERSION       0014

/**
 * @note Device access method : BLE or Mesh.
 */
#define MI_BLE_ENABLED

/**
 * @note To support Secure Auth procedure MUST have mijia secure chip (MSC).
 * If device use Standard auth or Mesh Auth, it should be 0.
 *      NONE   : 0
 *      MJSC   : 1
 *      MJA1   : 2
 */
#define HAVE_MSC               2

/* enable manufacture test or user command module */
#define MI_USER_CMD_ENABLE     1
#define MI_MANU_TEST_ENABLE    0
#if MI_MANU_TEST_ENABLE && MI_USER_CMD_ENABLE
#error must NOT enable both of MANU_TEST and USER_CMD
#endif

/* enable mcu ota demo */
#define MI_MCU_CMD_ENABLE	   0

/* enable lock spec demo */
#define MI_LOCK_CMD_ENABLE	   1

/* enable lock uart demo */
#define MI_LOCK_UART_ENABLE	   0

/* enable lock mcu demo, passthough to mcu */
#define MI_LOCK_MCU_ENABLE	   0

/**
 * @note Device side has RESET button or not.
 */
#define HAVE_RESET_BUTTON      0
#define HAVE_CONFIRM_BUTTON    0

/**
 * @note Which OOB methods device used in authentication procedure.
 *       OOB_USE_NUMPAD_INPUT  : device has a numeric keypad to enter the pairing code.
 *       OOB_USE_QR_CODE_OUT   : device provided with a QR code label.
 *       OOB_USE_DISPLAT_OUT   : device displayed a six digit number.
 */
#define OOB_USE_NUMPAD_INPUT   1
#define OOB_USE_QR_CODE_OUT    1
#define OOB_USE_DISPLAT_OUT    0

#define MAX_ATT_MTU            247

#include "flash_map.h"
#define DFU_NVM_START          OTA_TMP_ADDR
#define DFU_NVM_SIZE           OTA_TMP_SIZE

#define POTP_BASE               ((uint8_t *)(BKP_DATA1_ADDR))
#define POTP_FULL_SIZE          4096

/* DEBUG */
#define DEBUG_MIBLE            0
#define RXFER_VERBOSE          0
#define TIME_PROFILE           0

#endif
